package com.shangyueshang.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.shangyueshang.model.SysDict;
import com.shangyueshang.request.PageReq;
import com.shangyueshang.request.SysDictDTO;
import com.shangyueshang.response.HttpResult;
import com.shangyueshang.response.PageResult;

import java.util.List;
import java.util.Map;

/**
 * @author: JokeyZheng
 * @email: zhengjingfeng@ruqimobility.com
 * @created: 2022/1/5 17:43
 * @version: v1.0.0
 */
public interface SysDictService extends IService<SysDict> {

    /**
     * 根据标签获取
     *
     * @param label
     * @return
     */
    List<SysDict> findByLabel(String label);

    /**
     * 分页查询
     *
     * @param pageReq
     * @return
     */
    PageResult findPage(PageReq pageReq);

    /**
     * 根据类型准确查询
     *
     * @param type
     * @return
     */
    List<SysDict> findByType(String type);

    /**
     * 保存
     *
     * @param dictDTO
     * @return
     */
    HttpResult saveUpdate(SysDictDTO dictDTO);

    /**
     * 分类查询
     *
     * @param types
     * @return
     */
    Map<String, List<SysDict>> findByTypes(List<String> types);
}
